﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NLite.Reflection;
using System.Reflection;

namespace NLite.Mini.Internal
{
    class MemberModel
    {
        public string Id;
        public Type MemberType;
        public MemberInfo Member;
        public Type Contract;
    }

    class InjectionManyMemberModel
    {
        public bool Reinjection;
        public Type MemberType;
        public MemberInfo Member;
    }

    class MethodProxy
    {
        public MethodInfo Method;
        public object Target;
    }


    class InjectionManyHostTraker : List<InjectionManyHostTraker.TrackItem>
    {
        internal class TrackItem
        {
            public InjectionManyMemberModel[] Items;
            public object Host;
        }
    }

   
}
